using System.Linq;
using Castle.Core;
using Castle.MicroKernel;
using Castle.MicroKernel.ModelBuilder;

namespace DreamDriven.ObjectModel
{
    public class MandatoryProperyInjectionContributor : IContributeComponentModelConstruction
    {
        public void ProcessModel(IKernel kernel, ComponentModel model)
        {
            model.Properties.All(p => p.Dependency.IsOptional == false);
        }
    }
}